This invention relates to processing tomographic images such as computed tomography (CT) images or magnetic resonance imaging (MRI) images, and more specifically to preparing these images for visualization.
The discovery of the x-ray in 1895 can be considered the beginning of the era of meaningful non-invasive study of the human body. The subsequent developments of computed tomography (CT) and magnetic resonance (MR) imaging technologies have allowed doctors and scientists to gain valuable insight into the workings of the human body. The development and use of the x-ray and related technologies has led to earlier diagnosis of various illnesses and diseases, enabling doctors to save the lives of many patients. Although the x-ray has proven very valuable, there are certain limitations inherent in the technology that have not yet been addressed.
For example, the x-ray is unable to clearly distinguish and differentiate between various organs of the body such as the kidney, liver and pancreas. This technological limitation stems from the fact that the water densities of organs are all very similar, and that the x-ray cannot clearly distinguish between internal organs with similar water densities. In addition, an x-ray image may contain overlapping images of bone and organ and since bones have a greater density than organs, the portion of the x-ray image containing the bone totally obscures the image of any abnormalities located within an organ which it overlaps.
During a CT imaging session, a patient lies horizontal and is exposed to a series of X-ray detectors. A beam of x-rays passes a particular thin cross-section or xe2x80x9cslicexe2x80x9d of the patient. The detectors measure the amount of transmitted radiation and then calculate x-ray absorption of every point within the slice. A grayscale image is then constructed based upon the calculated x-ray absorption. The shades of gray in the image contrast the amount of x-ray absorption of every point within the slice. The slices obtained during a CT session can be reconstructed to provide an anatomically correct representation of the area of interest within the body that has been exposed to the x-rays.
During an MR imaging session, the patient is placed inside a strong magnetic field generated by a large magnet. Magnetized protons within the patient, such as hydrogen atoms, align with the magnetic field produced by the magnet. A particular slice of the patient is exposed to radio waves which create an oscillating magnetic field perpendicular to the main magnetic field. The slices can be taken in any plane chosen by the physician or technician (hereinafter the xe2x80x9coperatorxe2x80x9d) performing the imaging session. The protons in the patient""s body first absorb the radio waves and then emit the waves by moving out of alignment with the field. As the protons return to their orignal state (before excitation), diagnostic images based upon the waves emitted by the patient""s body are created. Like CT image slices, MR image slices can be reconstructed to provide an overall picture of the body area of interest. Parts of the body that produce a high signal are displayed as white in an MR image, while those with the lowest signals are displayed as black. Other body parts that have varying signal intensities between high and low are displayed as some shade of gray.
Regardless of the technology used to generate the initial slices, once the slices have been generated, they must be reassembled into complete images for viewing. Most imaging machines available today allow the operator to select the specific area of an image that they wish to view. For example, the operator may only wish to view bone in an image and to eliminate all other body materials, such as tissue. Once the user designates the area of the image or the body material of interest, a procedure known as xe2x80x9cconnectivityxe2x80x9d reassembles all instances of the designated body material occurring throughout the various slices. Connectivity as used herein refers to the process of connecting points (pixels or voxels) belonging to the same object.
At least three different methods have previously been used to perform connectivity processing. One method uses dilation to perform connectivity. The dilation method has two data sets, an original data set and a xe2x80x9cseedxe2x80x9d data set. A seed is a particular point chosen by the user that is within a particular body material of interest. The original data set contains an image with an area of interest represented as a xe2x80x9c1xe2x80x9d and the other areas of the image represented as a xe2x80x9c0.xe2x80x9d The dilation process starts when a seed from the seed data set is dilated, that is, each neighboring seed is checked to determine whether it is within the object. All neighbors of the seed are then stored into the original data set as seeds. The dilation method is repeated until no other seeds are added to the original data set. While the dilation method effectively performs connectivity, it is very slow.
A recursive-based implementation has also been used to perform connectivity processing. The recursive-based implementation starts with a seed voxel on a surface selected by the user. A voxel is simply a unit of graphic information that defines a point in three dimensional space. A voxel has 26 neighboring voxels throughout the x, y, and z coordinate planes. Once the seed is identified, the recursive based implementation collects all neighboring surface voxels and marks or designates these neighboring voxels as seeds for the next level of recursion. After all neighboring voxels have been collected, the recursive technique calls itself again providing the neighboring voxels as parameters. The recursive technique continues until all connected voxels are marked and the image can be assembled.
While the recursive technique performs connectivity very quickly, the technique also has several disadvantages. For example, the recursive technique raises the issue of memory size and usage. As the recursive connectivity technique marks the neighboring voxels and the recursive procedure continues to call itself, the number of elements tracked by the imaging system grows proportionately. When there are a large number of voxels in an image, the probability that the stack in the computer""s memory will overflow greatly increases. When a stack overflow occurs, no more elements can be added to the stack and the recursive procedure halts. This means that the recursive technique is not available for use on computer systems which have a limited stack.
Since the data sets produced by MR and CT images are typically very large in size, it is very likely the stack will overflow and that image processing will be aborted. In order to circumvent the likelihood of stack overflow and premature abortion of image processing, a method has been proposed whereby the size of the stack is repeatedly checked during the processing of an image. If the physical extent of the stack passes predetermined limits, processing can be halted. While this method may prevent inadvertent stack overflow if it is determined that the stack is too small to process a certain image, connectivity processing may still be aborted if the memory size is insufficient to connect all images slices.
Another method that can be used to perform connectivity processing is the iterative method. The iterative method is not quite as fast as the recursive method but it performs better than the dilation method and is stack size-independent, making it suitable for large images that cannot be processed using the recursive technique.
The current limitations of the present imaging technologies make it difficult to take full advantage of the full potential of MR and CT technologies. Without a more effective mechanism for performing connectivity and assembling slices into meaningful images, the field of medicine and other areas of scientific study and analysis that rely on MR and CT technologies will continue to be limited in the evaluation and use of currently available images.
In accordance with preferred embodiments of the present invention, a connectivity mechanism for improving connectivity processing of computed tomography and magnetic resonance images is provided. Specifically, the connectivity mechanism provides a fast, stack-independent iterative method for performing connectivity processing. The connectivity mechanism first designates a pixel of an object in a two-dimensional image as a seed. The connectivity mechanism then performs connectivity processing by checking the next forward pixel to determine if the pixel is within the object and if a neighbor of the pixel is a seed. If the pixel is within the object and a neighbor of the pixel is a seed, the pixel is marked as a seed and the connectivity mechanism checks the next forward pixel.
Forward processing of pixels continues until all forward pixels within the object have been marked as seeds. Once a forward processing step is completed, and if at least one new seed pixel has been identified, the connectivity mechanism will perform a backward process step to search for additional pixels that should be marked as seeds. The backward processing step is similar in technique to the forward processing step but is performed in the opposite direction. The process continues with forward and backward marking steps until no additional seed pixels can be identified.
The foregoing and other features and advantages of the invention will be apparent from the following more particular description of the preferred embodiment of the invention, as illustrated in the accompanying drawings.